//
//  HDMapView.h
//  HDMapKit
//
//  Created by Liuzhuan on 13-4-8.
//  Copyright (c) 2013年 hengdawb. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "HDAnnotation.h"
#import "HDCallOutView.h"

static NSString *annClickNoti = @"annClick";

@class HDTiledView,HDMapView;

@protocol HDMapViewDataSource <NSObject>
- (UIImage *)mapView:(HDMapView *)mapView
         imageForRow:(NSInteger)row
              column:(NSInteger)column
               scale:(NSInteger)scale;
@end

@protocol HDMapViewDelegate <NSObject>
@optional
- (void)mapViewDidZoom:(HDMapView *)mapView;
- (void)mapViewDidScroll:(HDMapView *)mapView;
- (void)mapView:(HDMapView *)mapView didReceiveSingleTap:(UIGestureRecognizer *)gestureRecognizer;
- (void)mapView:(HDMapView *)mapView didReceiveDoubleTap:(UIGestureRecognizer *)gestureRecognizer;
- (void)mapView:(HDMapView *)mapView didReceiveTwoFingerTap:(UIGestureRecognizer *)gestureRecognizer;

- (void)annClickedWith:(HDAnnotation*)ann;
@end

@interface HDMapView : UIScrollView<UIScrollViewDelegate>

@property (nonatomic,assign) id<HDMapViewDataSource>dataSource;
@property (nonatomic,assign) id<HDMapViewDelegate> mapViewdelegate;

@property (nonatomic, assign) size_t levelsOfZoom;
@property (nonatomic, assign) size_t levelsOfDetail;

@property (nonatomic, assign) BOOL centerSingleTap;
@property (nonatomic, assign) BOOL zoomsInOnDoubleTap;
@property (nonatomic, assign) BOOL zoomsOutOnTwoFingerTap;

@property (nonatomic, assign) CGSize          orignalSize;
@property (nonatomic, strong) NSMutableArray *pinAnnotations;




- (id)initWithFrame:(CGRect)frame contentSize:(CGSize)contentSize;

//改变点位状态方法
-(void)largeOneAnnWith:(NSString *)exhibit_id;
-(void)annotationShowHeighWith:(NSString *)autoNumber;
-(void)allAnnShowNormal;
-(void)updatePinPositionWith:(CGPoint)point;
//-(void)showPartAnnotationsWith:(NSArray *)arr;

//添加点位的方法
- (void)addAnnotation:(HDAnnotation *)annotation animated:(BOOL)animate;
- (void)addAnnotations:(NSArray *)annotations animated:(BOOL)animate;
- (void)removeAllAnnatations:(BOOL)animate;
-(void)addMineAnnotationWithAnnotation:(HDAnnotation*)annotation;

//路线操作的方法
- (void)myRouteImage:(NSString *)routeName;
- (void)hideRouteView;

//定位操作的方法
- (void)locationPin:(NSString *)number;
- (void)locationMine:(NSString *)myInfo
           andFriend:(NSString *)friendInfo;



@end
